package com.axzhengxin.platform.afterloan.service;

import com.axzhengxin.platform.afterloan.controller.InventoryLoanInfoController.InventoryLoanInfoImportResult;
import com.axzhengxin.platform.afterloan.domain.InventoryLoanInfo;

import java.util.List;

/**
 * IInventoryLoanInfoService
 * 存量业务Service接口
 *
 * @author jiangnan
 * @date 2021/4/1
 */
public interface IInventoryLoanInfoService {

    /**
     * 查询存量业务
     *
     * @param id 存量业务ID
     * @return 存量业务
     */
    InventoryLoanInfo selectInventoryLoanInfoById(Long id);

    /**
     * 查询存量业务列表
     *
     * @param inventoryLoanInfo 存量业务
     * @return 存量业务集合
     */
    List<InventoryLoanInfo> selectInventoryLoanInfoList(InventoryLoanInfo inventoryLoanInfo);

    /**
     * 新增存量业务
     *
     * @param inventoryLoanInfo 存量业务
     * @return 结果
     */
    int insertInventoryLoanInfo(InventoryLoanInfo inventoryLoanInfo);

    /**
     * 修改存量业务
     *
     * @param inventoryLoanInfo 存量业务
     * @return 结果
     */
    int updateInventoryLoanInfo(InventoryLoanInfo inventoryLoanInfo);

    /**
     * 批量删除存量业务
     *
     * @param ids 需要删除的存量业务ID
     * @return 结果
     */
    int deleteInventoryLoanInfoByIds(Long[] ids);

    /**
     * 删除存量业务信息
     *
     * @param id 存量业务ID
     * @return 结果
     */
    int deleteInventoryLoanInfoById(Long id);

    /**
     * 导入存量业务信息
     *
     * @param loanInfoList  信息集合
     * @param updateSupport 是否支持更新
     * @return 结果消息
     */
    InventoryLoanInfoImportResult importInventoryLoanInfo(List<InventoryLoanInfo> loanInfoList, boolean updateSupport);

}
